#!/bin/bash

#1 获取输入参数个数，如果没有参数，直接退出
FILE_COUNT=$#
if((FILE_COUNT==0)); then
    echo ">>> 错误：未传递文件参数！"
    echo "  用法：oracle11XE_docker.sh rootPassword"
    exit;
fi
ROOT_PASSWORD=$1

docker run -d \
    --privileged=true \
    -v /etc/localtime:/etc/localtime:ro \
    -p 8080:8080 \
    -p 1521:1521 \
    -e ORACLE_PWD=$ROOT_PASSWORD \
    -e oracle_allow_remote=true \
    -v /opt/module/oracle-xe-11g/oradata:/u01/app/oracle/product/11.2.0/xe/oradata \
    --name oracle-xe-11g \
    oracleinanutshell/oracle-xe-11g

# ============= 本容器提供如下安装信息:============= 
# hostname：localhost
# 端口：1521
# SID：XE
# username：system/sys
# password:oracle
# ============= 管理界面访问:============= 
# url:http://localhost:9090/apex
# workspace:internal
# username:admin
# password:oracle

# ============== jdbc依赖 ==============
# <dependency>
#     <groupId>com.oracle</groupId>
#     <artifactId>ojdbc6</artifactId>
#     <version>11.2.0.3</version>
# </dependency>
#=============== url连接 ===============
# jdbc:oracle:thin:@${host}:${port}:XE
#=============== 创建用户 ===============
# docker exec -it  oracle-xe-11g  bash
#使用普通身份登入
# sqlplus system/oracle
# 查看用户
# select username,password from dba_users;
# 创建用户：用户名为 oracle；密码为：oracle
# create user oracle identified by oracle;
# 查看是否有此用户 oracle
# select * from all_users;
# 给用户赋予connect 和 resource 角色（connect： 保证数据库可以链接；resource：该用户可以使用数据库的资源；create session：会话的权利）
# grant connect,resource,create session to oracle;
# 取消权限或角色：
# revoke 权限/角色 from 用户名；
# 创建表格添加，更改用户表空间配额
# grant unlimited tablespace to oracle;
# 删除用户（使用 drop user gwl cascade; 会删除此用户名下的所有表和视图）
# drop user oracle;
# 退出
# exit;

